package  com.zerosky.crm.service;

import java.util.List;
import java.util.Map;

import com.zerosky.crm.po.Contract;
import com.zerosky.crm.po.Employee;
import com.zerosky.crm.util.PageInfo;

/**Contract业务逻辑接口 
 * @author hugy;
 * @since 2017-06-08
 */
public interface ContractService {

	/**Contract列表接口
	 * @author hugy;
	 * @since 2017-06-08
	 */
	public List<Contract> getContractList(Map map);
	
	/**Contract列表接口
	 * @author hugy;
	 * @since 2017-06-08
	 */
	public PageInfo<Contract> getPageInfoList(Map map,PageInfo<Contract> page)throws Exception;

	/**通过主键查找Contract实体接口
	 * @param id Contract主键
	 * @author hugy;
	 * @since 2017-06-08
	 */
	public Contract getContractById(String id);

	/**保存Contract接口 
	 * @param Contract 实体对象, operation 操作类型
	 * @author hugy;
	 * @since 2017-06-08
	 */
	public void saveContract(Contract contract, String operation,Employee user) throws Exception;

	/**删除Contract接口
	 * @param idArray Contract主键数组
	 * @author hugy;
	 * @since 2017-06-08
	 */
	public void deleteContractById(String id) throws Exception;
	/**
	 * 获取产品使用的额度
	 * @param productName 产品名称
	 * @return
	 */
	public Double getContractSum(String productName);
}
